package com.battle.pojo.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.battle.pojo.check.SensitiveEntity;
import com.battle.pojo.check.SensitiveField;
import com.battle.pojo.converter.StringListConverter;
import jakarta.persistence.Column;
import jakarta.persistence.Convert;
import jakarta.persistence.Entity;
import lombok.Data;
import nirvana.core.domains.ann.AccEntity;
import nirvana.core.domains.entity.DomainBaseEntity;
import nirvana.core.domains.enums.EntityType;

import java.time.LocalDate;
import java.util.List;

/**
 * @author anni.zhu
 * @author anni.zhu@king-v.com
 * Created in 2024/10/10 14:25
 * 技能证书
 */
@Data
@TableName(value = "SKILL_CERTIFICATE",autoResultMap = true)
@Entity(name = "SKILL_CERTIFICATE")
@AccEntity(value = "技能证书", type = EntityType.SERVICE_ENTITY)
@SensitiveEntity
public class SkillCertificate extends DomainBaseEntity<SkillCertificate> {
    /**
     * 人员id
     */
    @Column()
    private Long userId;

    /**
     * 技能认证编码
     */
    @Column()
    private String code;

    /**
     * 技能认证名称
     */
    @Column()
    @SensitiveField
    private String name;

    /**
     * 认证等级
     */
    @Column()
    private String level;

    /**
     * 技能类型
     */
    @Column()
    private String type;

    /**
     * 有效期开始时间 yyyy-MM-dd
     */
    @Column()
    private LocalDate startTime;

    /**
     * 有效期结束时间 yyyy-MM-dd
     */
    @Column()
    private LocalDate endTime;

    /**
     * 文件地址
     */
    @Column()
    private String fileUrl;
}
